package com.woniu.dao;

import com.woniu.entity.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @description: 用于处理资金渠道请求的dao接口
 * @author Dante
 * @date: 2022/9/20 19:31
 */
public interface ICapitalChannelDao {
    List<CapitalChannelEntity> findAll();

    List<CapitalChannelEntity> selectChannels(CapitalChannelExportVO data);

    List<CapitalChannelEntity> searchWithLimits(CapitalChannelSearchVO data);

    Integer addCapitalChannel(CapitalChannelEntity data);

    Integer searchOneCapitalChannel(String channelName);

    Integer getMaxCapitalChannelId();

    SysAdminVO findCurrentUser(String userName);

    Integer updateChannelStatus(Integer channelId);

    CapitalChannelEntity checkChannelInfo(Integer channelId);

    Integer updateCapitalChannel(CapitalChannelEntity data);

    List<SysAdminVO> getAllUserInfo();

    List<CapitalChannelEntity> findAllAssetChannel();

    List<EnhancedProduction> findAllAssetChannelProducts(List<Integer> productIds);

    List<CapitalChannelEntity> findSpecificAssetChannel(CapitalChannelExportVO data);

    List<CapitalChannelEntity> searchWithLimitsOfAsset(CapitalChannelSearchVO data);

    List<ProductionInfo> listCapitalProductions();

    Integer addProductToChannel(Map<String, Object> data);

    List<ProductionInfo> getAllRelativeProducts(Integer channelId);

    Integer deleteRelProduct(Integer cpmId);

    List<ProductionInfo> searchRelProduct(Map<String, Object> data);

    Integer banChannel(Integer channelId);

    Integer selectChannelProduct(Map<String, Object> data);

    Integer addAssetChannel(CapitalChannelEntity data);
}
